package com.kqb.sgdrug.model;

import com.baomidou.mybatisplus.annotation.IdType;
import com.baomidou.mybatisplus.annotation.TableField;
import com.baomidou.mybatisplus.annotation.TableId;
import com.baomidou.mybatisplus.annotation.TableName;

import java.io.Serializable;
import java.util.Date;

import lombok.Data;

/**
 * 药品分类表，用于存储药品的分类信息，支持多级分类
 *
 * @TableName t_drug_category
 */
@TableName(value = "t_drug_category")
@Data
public class DrugCategory implements Serializable {
    /**
     * 分类ID，主键，自增
     */
    @TableId(value = "category_id", type = IdType.AUTO)
    private Integer categoryId;

    /**
     * 分类名称，例如“抗生素”、“维生素”
     */
    @TableField(value = "name")
    private String name;

    /**
     * 父级分类ID，用于支持多级分类
     */
    @TableField(value = "parent_id")
    private Integer parentId;

    /**
     * 分类描述，详细说明该分类的用途或特点
     */
    @TableField(value = "description")
    private String description;

    /**
     * 分类创建时间，默认当前时间
     */
    @TableField(value = "create_at")
    private Date createAt;

    /**
     * 分类更新时间，自动更新为当前时间
     */
    @TableField(value = "update_at")
    private Date updateAt;

    /**
     * 逻辑删除字段
     */
    @TableField(value = "deleted")
    private Boolean deleted;

    @TableField(exist = false)
    private static final long serialVersionUID = 1L;
}